/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DBLager;

import ModelLager.*;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author Jonas Kristensen
 */
public interface IFDBSup
{
    /**
     * Find alle suppliers.
     * @return ArrayList<SupplierP>
     */
    public ArrayList<SupplierP> getAllSuppliers();
    
    /**
     * Find en supplier med dette id
     * @param supplierID ID på supplier som skal findes
     * @return hvis ingen er fundet returnes null ellers returneres objektet
     */
    public SupplierP findSupplier(int supplierID);
    
    /**
     * Find suppliers med dette navn som en del af hele deres navn
     * @param name navn som indgår i hele suppliers navn
     * @return ArrayList<SupplierP>
     */
    public ArrayList<SupplierP> getSuppliersByName(String name);
    
    /**
     * Lav en ny supplier og indsæt ham i databasen
     * @param sObj supplierobjekt
     * @return returncode -1 = fejl. 1 = ok.
     */
    public int insertSupplier(SupplierP sObj) throws SQLException, Exception;
    
    /**
     * Slet en supplier med dette ID
     * @param supplierID ID på den supplier man vil slette
     * @return returncode -1 = fejl. 1 = ok.
     */
    public int deleteSupplier(int supplierID);
    
    /**
     * Opdatering af supplier
     * @param supplier objekt af den supplier man vil opdatere
     * @return returncode -1 = fejl. 1 = ok.
     */
    public int updateSupplier(SupplierP supplier) throws SQLException, Exception;
}
